home *** CD-ROM | disk | FTP | other *** search
/ Player Photo CD 2 / Player Photo CD - Volume 2.iso / setup / title.mst < prev    next >
Text File  |  1994-11-27  |  6KB  |  240 lines

  1.     '' Global variables
  2.  
  3.     GLOBAL TitleShortName$
  4.     GLOBAL TitleLongName$
  5.     GLOBAL MVBFileName$
  6.     GLOBAL PromptForPath%
  7.     GLOBAL DefaultPath$
  8.     GLOBAL ProgManGroup$
  9.     GLOBAL ProgManItem$
  10.     GLOBAL IconName$
  11.  
  12.     '' ****************************************************************
  13.     
  14.     TitleShortName$ = "Player2"
  15.     TitleLongName$ = "Player PhotoMania #2"
  16.         
  17.     MVBFileName$ = "Player2"
  18.     PromptForPath% = 0
  19.     DefaultPath$ = "c:\legend"
  20.     
  21.     ProgManGroup$ = "Player"
  22.     ProgManItem$ = "Player PhotoMania 2"
  23.     IconName$ = "pstill2"
  24.     
  25.  
  26.     GLOBAL CUIDLL$
  27.  
  28.     '' Include files
  29.     '$INCLUDE 'setupapi.inc'
  30.     
  31.     '' Custom UI dll
  32.     CUIDLL$ = "mscuistf.dll"
  33.     
  34.     '' Dialog ID's
  35.     CONST DESTPATH      = 1000
  36.     CONST APPHELP       = 2000
  37.     CONST TOOBIG        = 3000
  38.     CONST BADPATH       = 4000
  39.     CONST SUCCESS       = 5000
  40.     
  41.     '' Bitmap ID
  42.     CONST LOGO = 1
  43.     
  44.     '' Functions and subroutines
  45.     DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  46.     DECLARE FUNCTION GetTitleDir (szDefault$) AS STRING
  47.     DECLARE FUNCTION CopyFiles(szTitleDir$) AS INTEGER
  48.     DECLARE SUB ModifyProgramManager
  49.     DECLARE SUB ShowSuccess
  50.     
  51.     i% = SetSizeCheckMode(scmOff)
  52.     
  53.     SetTitle "Player PhotoMania #1"
  54.     SetBitmap CUIDLL$, LOGO 
  55.     
  56.     '' Read in the INF file.
  57.     
  58.  
  59.     ReadInfFile GetSymbolValue("STF_CWDDIR") + "TITLE.INF"
  60.     
  61.     '' Modify Program Manager
  62.     ModifyProgramManager    
  63.     
  64.     '' Success dialog
  65.     ShowSuccess
  66.     
  67. QUIT:
  68.     
  69.     END
  70.     
  71.  
  72. '*************************************************************************
  73. '** Purpose:
  74. '**     Prompts the user for a path for the title files
  75. '** Arguments:
  76. '**     szDefault$ - default path
  77. '** Returns:
  78. '**     New valid path name, or "" if the user quit.
  79. '*************************************************************************
  80.  
  81. FUNCTION GetTitleDir (szDefault$) STATIC AS STRING
  82.  
  83.     SetSymbolValue "String", TitleShortName$
  84.     SetSymbolValue "EditTextIn", szDefault$
  85.     SetSymbolValue "EditFocus", "ALL"
  86.  
  87.     GETPATH:
  88.  
  89.     sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", APPHELP, "FHelpDlgProc")
  90.  
  91.     IF sz$ = "CONTINUE" THEN
  92.         szTitleDir$ = GetSymbolValue("EditTextOut")
  93.         IF IsDirWritable(szTitleDir$) = 0 THEN
  94.  
  95.             BADPATH:
  96.  
  97.             sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfoDlgProc", 0, "")
  98.             IF sz$ = "REACTIVATE" THEN
  99.                 GOTO BADPATH
  100.             END IF
  101.             UIPop 1
  102.             GOTO GETPATH
  103.         END IF
  104.         UIPop 1
  105.         CreateDir szTitleDir$, cmoNone
  106.  
  107.     ELSEIF sz$ = "REACTIVATE" THEN
  108.         GOTO GETPATH
  109.  
  110.     ELSE
  111.         szTitleDir$ = ""
  112.  
  113.     END IF
  114.  
  115.     GetTitleDir = szTitleDir$
  116.  
  117. END FUNCTION
  118.  
  119.  
  120. '*************************************************************************
  121. '** Purpose:
  122. '**     Copies the files in the INF file
  123. '** Arguments:
  124. '**     szTitleDir$ - destination directory for the title files
  125. '** Returns
  126. '**     1 if files were copied, 0 otherwise
  127. '*************************************************************************
  128.  
  129. FUNCTION CopyFiles(szTitleDir$) STATIC AS INTEGER
  130.  
  131.     '' Add all system files to the copy list
  132.     AddSectionFilesToCopyList "System Files", GetSymbolValue("STF_SRCDIR") + "setup\", GetWindowsSysDir()
  133.     
  134.     '' Add all of the title files to the copy list
  135.     AddSectionFilesToCopyList "Installed Title Files", GetSymbolValue("STF_SRCDIR"), szTitleDir$
  136.     
  137.     '' Check size
  138.     szExtras$ = "Extra"
  139.     szCosts$ = "Costs"
  140.     szNeededs$ = "Neededs"
  141.     FOR i% = 1 TO 26 STEP 1
  142.         AddListItem szExtras$, "0"
  143.     NEXT i%
  144.     
  145.     '' We assume that VIEWER.INI will take another 4K
  146.     ReplaceListItem szExtras$, ASC(MID$(GetWindowsDir(), 1, 1)) - ASC("A") + 1, STR$(4096)
  147.     
  148.     '' Get amount of space required
  149.     StillNeed& = GetCopyListCost(szExtras$, szCosts$, szNeededs$)
  150.     
  151.     '' Put up a message if there is not enough space
  152.     FOR i% = 1 TO 26 STEP 1
  153.         IF VAL(GetListItem(szNeededs$, i%)) > 0 THEN
  154.     
  155.             SetSymbolValue "String1", LTRIM$(STR$(VAL(GetListItem(szCosts$, i%)) / 1024))
  156.             SetSymbolValue "String2", CHR$(i% - 1 + ASC("A"))
  157.     
  158.             TOOBIG:
  159.     
  160.             sz$ = UIStartDlg(CUIDLL$, TOOBIG, "FInfoDlgProc", 0, "")
  161.             IF sz$ = "REACTIVATE" THEN
  162.                 GOTO TOOBIG
  163.             END IF
  164.             UIPop 1
  165.             CopyFiles = 0
  166.             GOTO DONTCOPY
  167.         END IF
  168.     NEXT i%
  169.     
  170.     '' Copy the files
  171.     CopyFilesInCopyList
  172.     
  173.     CopyFiles = 1
  174.  
  175. DONTCOPY:
  176.  
  177. END FUNCTION
  178.  
  179.  
  180. '*************************************************************************
  181. '** Purpose:
  182. '**     Puts up a success dialog
  183. '*************************************************************************
  184.  
  185. SUB ShowSuccess STATIC
  186.  
  187.     SUCCESS:
  188.     
  189.     SetSymbolValue "String1", TitleShortName$
  190.     sz$ = UIStartDlg(CUIDLL$, SUCCESS, "FInfoDlgProc", 0, "")
  191.     IF sz$ = "REACTIVATE" THEN
  192.         GOTO SUCCESS
  193.     END IF
  194.     UIPop 1
  195.     
  196. END SUB
  197.  
  198. '*************************************************************************
  199. '** Purpose:
  200. '**     Appends a file name to the end of a directory path,
  201. '**     inserting a backslash character as needed.
  202. '** Arguments:
  203. '**     szDir$  - full directory path (with optional ending "\")
  204. '**     szFile$ - filename to append to directory
  205. '** Returns:
  206. '**     Resulting fully qualified path name.
  207. '*************************************************************************
  208.  
  209. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  210.     IF szDir$ = "" THEN
  211.         MakePath = szFile$
  212.     ELSEIF szFile$ = "" THEN
  213.         MakePath = szDir$
  214.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  215.         MakePath = szDir$ + szFile$
  216.     ELSE
  217.         MakePath = szDir$ + "\" + szFile$
  218.     END IF
  219. END FUNCTION
  220.  
  221.  
  222. '*************************************************************************
  223. '** Purpose:
  224. '**     Creates program manager entries for the title
  225. '*************************************************************************
  226.  
  227. SUB ModifyProgramManager STATIC
  228.  
  229.     szGork$ = GetSymbolValue("STF_SRCDIR")
  230.  
  231.     CreateProgmanGroup ProgmanGroup$, "", cmoNone
  232.     ShowProgmanGroup ProgmanGroup$, 1, cmoNone
  233.     
  234.     CreateProgmanItem ProgmanGroup$, ProgmanItem$, MakePath(GetSymbolValue("STF_SRCDIR"), MVBFileName$ + ".exe"), MakePath(GetSymbolValue("STF_SRCDIR"), IconName$ + ".ICO")+",0,0,0,"+szGork$, cmoOverwrite
  235.     CreateProgmanItem ProgmanGroup$, "Readme", MakePath(GetSymbolValue("STF_SRCDIR"), "readme.txt"), MakePath(GetSymbolValue("STF_SRCDIR"), "lrme.ICO")+",0,0,0,"+szGork$,cmoOverwrite
  236.  
  237. END SUB
  238.  
  239.  
  240.